package org.jeecg.modules.networking.util;

import java.util.HashMap;
import java.util.Map;

public class VehicleCodeMapper {
    private static final Map<String, String> vehicleTypeToCode = new HashMap<>();

    static {
        vehicleTypeToCode.put("重型普通半挂车", "B11");
        vehicleTypeToCode.put("重型厢式半挂车", "B12");
        vehicleTypeToCode.put("重型罐式半挂车", "B13");
        vehicleTypeToCode.put("重型平板半挂车", "B14");
        vehicleTypeToCode.put("重型集装箱半挂车", "B15");
        vehicleTypeToCode.put("重型自卸半挂车", "B16");
        vehicleTypeToCode.put("重型特殊结构半挂车", "B17");
        vehicleTypeToCode.put("重型仓栅式半挂车", "B18");
        vehicleTypeToCode.put("重型旅居半挂车", "B19");
        vehicleTypeToCode.put("重型专项作业半挂车", "B1A");
        vehicleTypeToCode.put("重型低平板半挂车", "B1B");
        vehicleTypeToCode.put("中型普通半挂车", "B21");
        vehicleTypeToCode.put("中型厢式半挂车", "B22");
        vehicleTypeToCode.put("中型罐式半挂车", "B23");
        vehicleTypeToCode.put("中型平板半挂车", "B24");
        vehicleTypeToCode.put("中型集装箱半挂车", "B25");
        vehicleTypeToCode.put("中型自卸半挂车", "B26");
        vehicleTypeToCode.put("中型特殊结构半挂车", "B27");
        vehicleTypeToCode.put("中型仓栅式半挂车", "B28");
        vehicleTypeToCode.put("中型旅居半挂车", "B29");
        vehicleTypeToCode.put("中型专项作业半挂车", "B2A");
        vehicleTypeToCode.put("中型低平板半挂车", "B2B");
        vehicleTypeToCode.put("轻型普通半挂车", "B31");
        vehicleTypeToCode.put("轻型厢式半挂车", "B32");
        vehicleTypeToCode.put("轻型罐式半挂车", "B33");
        vehicleTypeToCode.put("轻型平板半挂车", "B34");
        vehicleTypeToCode.put("轻型自卸半挂车", "B35");
        vehicleTypeToCode.put("轻型仓栅式半挂车", "B36");
        vehicleTypeToCode.put("轻型旅居半挂车", "B37");
        vehicleTypeToCode.put("轻型专项作业半挂车", "B38");
        vehicleTypeToCode.put("轻型低平板半挂车", "B39");
        vehicleTypeToCode.put("重型普通全挂车", "G11");
        vehicleTypeToCode.put("重型厢式全挂车", "G12");
        vehicleTypeToCode.put("重型罐式全挂车", "G13");
        vehicleTypeToCode.put("重型平板全挂车", "G14");
        vehicleTypeToCode.put("重型集装箱全挂车", "G15");
        vehicleTypeToCode.put("重型自卸全挂车", "G16");
        vehicleTypeToCode.put("重型仓栅式全挂车", "G17");
        vehicleTypeToCode.put("重型旅居全挂车", "G18");
        vehicleTypeToCode.put("重型专项作业全挂车", "G19");
        vehicleTypeToCode.put("中型普通全挂车", "G21");
        vehicleTypeToCode.put("中型厢式全挂车", "G22");
        vehicleTypeToCode.put("中型罐式全挂车", "G23");
        vehicleTypeToCode.put("中型平板全挂车", "G24");
        vehicleTypeToCode.put("中型集装箱全挂车", "G25");
        vehicleTypeToCode.put("中型自卸全挂车", "G26");
        vehicleTypeToCode.put("中型仓栅式全挂车", "G27");
        vehicleTypeToCode.put("中型旅居全挂车", "G28");
        vehicleTypeToCode.put("中型专项作业全挂车", "G29");
        vehicleTypeToCode.put("轻型普通全挂车", "G31");
        vehicleTypeToCode.put("轻型厢式全挂车", "G32");
        vehicleTypeToCode.put("轻型罐式全挂车", "G33");
        vehicleTypeToCode.put("轻型平板全挂车", "G34");
        vehicleTypeToCode.put("轻型自卸全挂车", "G35");
        vehicleTypeToCode.put("轻型仓栅式全挂车", "G36");
        vehicleTypeToCode.put("轻型旅居全挂车", "G37");
        vehicleTypeToCode.put("轻型专项作业全挂车", "G38");
        vehicleTypeToCode.put("中型罐式货车", "H24");
        vehicleTypeToCode.put("中型平板货车", "H25");
        vehicleTypeToCode.put("中型集装厢车", "H26");
        vehicleTypeToCode.put("中型自卸货车", "H27");
        vehicleTypeToCode.put("中型特殊结构货车", "H28");
        vehicleTypeToCode.put("中型仓栅式货车", "H29");
        vehicleTypeToCode.put("轻型普通货车", "H31");
        vehicleTypeToCode.put("轻型厢式货车", "H32");
        vehicleTypeToCode.put("轻型封闭货车", "H33");
        vehicleTypeToCode.put("轻型罐式货车", "H34");
        vehicleTypeToCode.put("轻型平板货车", "H35");
        vehicleTypeToCode.put("轻型自卸货车", "H37");
        vehicleTypeToCode.put("轻型特殊结构货车", "H38");
        vehicleTypeToCode.put("轻型仓栅式货车", "H39");
        vehicleTypeToCode.put("微型普通货车", "H41");
        vehicleTypeToCode.put("微型厢式货车", "H42");
        vehicleTypeToCode.put("微型封闭货车", "H43");
        vehicleTypeToCode.put("微型罐式货车", "H44");
        vehicleTypeToCode.put("微型自卸货车", "H45");
        vehicleTypeToCode.put("微型特殊结构货车", "H46");
        vehicleTypeToCode.put("微型仓栅式货车", "H47");
        vehicleTypeToCode.put("普通低速货车", "H51");
        vehicleTypeToCode.put("厢式低速货车", "H52");
        vehicleTypeToCode.put("罐式低速货车", "H53");
        vehicleTypeToCode.put("自卸低速货车", "H54");
        vehicleTypeToCode.put("仓栅式低速货车", "H55");
        vehicleTypeToCode.put("重型普通货车", "H11");
        vehicleTypeToCode.put("重型厢式货车", "H12");
        vehicleTypeToCode.put("重型封闭货车", "H13");
        vehicleTypeToCode.put("重型罐式货车", "H14");
        vehicleTypeToCode.put("重型平板货车", "H15");
        vehicleTypeToCode.put("重型集装厢车", "H16");
        vehicleTypeToCode.put("重型自卸货车", "H17");
        vehicleTypeToCode.put("重型特殊结构货车", "H18");
        vehicleTypeToCode.put("重型仓栅式货车", "H19");
        vehicleTypeToCode.put("大型普通客车", "K11");
        vehicleTypeToCode.put("大型双层客车", "K12");
        vehicleTypeToCode.put("大型卧铺客车", "K13");
        vehicleTypeToCode.put("大型铰接客车", "K14");
        vehicleTypeToCode.put("大型越野客车", "K15");
        vehicleTypeToCode.put("大型轿车", "K16");
        vehicleTypeToCode.put("大型专用客车", "K17");
        vehicleTypeToCode.put("大型专用校车", "K18");
        vehicleTypeToCode.put("中型普通客车", "K21");
        vehicleTypeToCode.put("中型双层客车", "K22");
        vehicleTypeToCode.put("中型卧铺客车", "K23");
        vehicleTypeToCode.put("中型铰接客车", "K24");
        vehicleTypeToCode.put("中型越野客车", "K25");
        vehicleTypeToCode.put("中型轿车", "K26");
        vehicleTypeToCode.put("中型专用客车", "K27");
        vehicleTypeToCode.put("中型专用校车", "K28");
        vehicleTypeToCode.put("小型普通客车", "K31");
        vehicleTypeToCode.put("小型越野客车", "K32");
        vehicleTypeToCode.put("小型轿车", "K33");
        vehicleTypeToCode.put("小型专用客车", "K34");
        vehicleTypeToCode.put("小型专用校车", "K38");
        vehicleTypeToCode.put("微型普通客车", "K41");
        vehicleTypeToCode.put("微型越野客车", "K42");
        vehicleTypeToCode.put("微型轿车", "K43");
        vehicleTypeToCode.put("普通正三轮摩托车", "M11");
        vehicleTypeToCode.put("轻便正三轮摩托车", "M12");
        vehicleTypeToCode.put("正三轮载客摩托车", "M13");
        vehicleTypeToCode.put("正三轮载货摩托车", "M14");
        vehicleTypeToCode.put("侧三轮摩托车", "M15");
        vehicleTypeToCode.put("普通二轮摩托车", "M21");
        vehicleTypeToCode.put("轻便二轮摩托车", "M22");
        vehicleTypeToCode.put("三轮汽车", "N11");
        vehicleTypeToCode.put("重型半挂牵引车", "Q11");
        vehicleTypeToCode.put("重型全挂牵引车", "Q12");
        vehicleTypeToCode.put("中型半挂牵引车", "Q21");
        vehicleTypeToCode.put("中型全挂牵引车", "Q22");
        vehicleTypeToCode.put("轻型半挂牵引车", "Q31");
        vehicleTypeToCode.put("轻型全挂牵引车", "Q32");
        vehicleTypeToCode.put("大型轮式拖拉机", "T11");
        vehicleTypeToCode.put("小型轮式拖拉机", "T21");
        vehicleTypeToCode.put("手扶拖拉机", "T22");
        vehicleTypeToCode.put("手扶变形运输机", "T23");
        vehicleTypeToCode.put("道路挖掘", "R01");
        vehicleTypeToCode.put("道路占用", "R02");
        vehicleTypeToCode.put("大型专项作业车", "Z11");
        vehicleTypeToCode.put("中型专项作业车", "Z21");
        vehicleTypeToCode.put("小型专项作业车", "Z31");
        vehicleTypeToCode.put("微型专项作业车", "Z41");
        vehicleTypeToCode.put("重型专项作业车", "Z51");
        vehicleTypeToCode.put("无轨电车", "D11");
        vehicleTypeToCode.put("有轨电车", "D12");
        vehicleTypeToCode.put("自行车", "F01");
        vehicleTypeToCode.put("三轮车", "F02");
        vehicleTypeToCode.put("手推车", "F03");
        vehicleTypeToCode.put("残疾人专用车", "F04");
        vehicleTypeToCode.put("畜力车", "F05");
        vehicleTypeToCode.put("助力自行车", "F06");
        vehicleTypeToCode.put("电动自行车", "F07");
        vehicleTypeToCode.put("其他非机动车", "F09");
        vehicleTypeToCode.put("其它", "X99");
    }

    public static String getVehicleCode(String vehicleType) {
        return vehicleTypeToCode.getOrDefault(vehicleType, null);
    }

}
